From 719f258bc63f1a2c26572f89541ffd910f71281a Mon Sep 17 00:00:00 2001 From: Tim Janik Date: Fri, 19 May 2000 05:50:46 +0000 Subject: [PATCH] handle "(nil)" foundries, patch from Grigorios Magklis. Fri May 19 06:49:23 2000 Tim Janik * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle "(nil)" foundries, patch from Grigorios Magklis. * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash on non-available fonts, based on a patch by Grigorios Magklis . --- ChangeLog | 9 +++++++++ ChangeLog.pre-2-0 | 9 +++++++++ ChangeLog.pre-2-10 | 9 +++++++++ ChangeLog.pre-2-2 | 9 +++++++++ ChangeLog.pre-2-4 | 9 +++++++++ ChangeLog.pre-2-6 | 9 +++++++++ ChangeLog.pre-2-8 | 9 +++++++++ gtk/gtkfontsel.c | 15 +++++++++------ 8 files changed, 72 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index dab755fc81..aa0ad980d4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +Fri May 19 06:49:23 2000 Tim Janik + + * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle + "(nil)" foundries, patch from Grigorios Magklis. + + * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash + on non-available fonts, based on a patch by Grigorios Magklis + . + 2000-05-18 Elliot Lee * gdk/x11/gdkregion-generic.c: If a region does not have any diff --git a/ChangeLog.pre-2-0 b/ChangeLog.pre-2-0 index dab755fc81..aa0ad980d4 100644 --- a/ChangeLog.pre-2-0 +++ b/ChangeLog.pre-2-0 @@ -1,3 +1,12 @@ +Fri May 19 06:49:23 2000 Tim Janik + + * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle + "(nil)" foundries, patch from Grigorios Magklis. + + * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash + on non-available fonts, based on a patch by Grigorios Magklis + . + 2000-05-18 Elliot Lee * gdk/x11/gdkregion-generic.c: If a region does not have any diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index dab755fc81..aa0ad980d4 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,12 @@ +Fri May 19 06:49:23 2000 Tim Janik + + * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle + "(nil)" foundries, patch from Grigorios Magklis. + + * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash + on non-available fonts, based on a patch by Grigorios Magklis + . + 2000-05-18 Elliot Lee * gdk/x11/gdkregion-generic.c: If a region does not have any diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2 index dab755fc81..aa0ad980d4 100644 --- a/ChangeLog.pre-2-2 +++ b/ChangeLog.pre-2-2 @@ -1,3 +1,12 @@ +Fri May 19 06:49:23 2000 Tim Janik + + * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle + "(nil)" foundries, patch from Grigorios Magklis. + + * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash + on non-available fonts, based on a patch by Grigorios Magklis + . + 2000-05-18 Elliot Lee * gdk/x11/gdkregion-generic.c: If a region does not have any diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index dab755fc81..aa0ad980d4 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,12 @@ +Fri May 19 06:49:23 2000 Tim Janik + + * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle + "(nil)" foundries, patch from Grigorios Magklis. + + * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash + on non-available fonts, based on a patch by Grigorios Magklis + . + 2000-05-18 Elliot Lee * gdk/x11/gdkregion-generic.c: If a region does not have any diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index dab755fc81..aa0ad980d4 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,12 @@ +Fri May 19 06:49:23 2000 Tim Janik + + * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle + "(nil)" foundries, patch from Grigorios Magklis. + + * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash + on non-available fonts, based on a patch by Grigorios Magklis + . + 2000-05-18 Elliot Lee * gdk/x11/gdkregion-generic.c: If a region does not have any diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index dab755fc81..aa0ad980d4 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,12 @@ +Fri May 19 06:49:23 2000 Tim Janik + + * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle + "(nil)" foundries, patch from Grigorios Magklis. + + * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash + on non-available fonts, based on a patch by Grigorios Magklis + . + 2000-05-18 Elliot Lee * gdk/x11/gdkregion-generic.c: If a region does not have any diff --git a/gtk/gtkfontsel.c b/gtk/gtkfontsel.c index 4c2318c2c0..c71206a6e9 100644 --- a/gtk/gtkfontsel.c +++ b/gtk/gtkfontsel.c @@ -1778,21 +1778,21 @@ gtk_font_selection_load_font (GtkFontSelection *fontsel) #endif #ifndef GDK_WINDOWING_WIN32 font = gdk_font_load (fontname); - xfs = GDK_FONT_XFONT(font); - if (xfs->min_byte1 != 0 || xfs->max_byte1 != 0) + xfs = font ? GDK_FONT_XFONT (font) : NULL; + if (xfs && (xfs->min_byte1 != 0 || xfs->max_byte1 != 0)) { gchar *tmp_name; gdk_font_unref (font); tmp_name = g_strconcat (fontname, ",*", NULL); font = gdk_fontset_load (tmp_name); - g_free(tmp_name); + g_free (tmp_name); } #else /* Load as a fontset so that gtkentry uses wide chars for it */ font = gdk_fontset_load (fontname); #endif - g_free(fontname); + g_free (fontname); if (font) { @@ -3371,10 +3371,13 @@ gtk_font_selection_get_font_name (GtkFontSelection *fontsel) family_str = font->family; foundry_str = fontsel_info->properties[FOUNDRY][font->foundry]; + /* some fonts have a (nil) foundry */ + if (strcmp (foundry_str, "(nil)") == 0) + foundry_str = ""; + for (prop = 0; prop < GTK_NUM_STYLE_PROPERTIES; prop++) { - property_str[prop] - = fontsel_info->properties[prop][fontsel->property_values[prop]]; + property_str[prop] = fontsel_info->properties[prop][fontsel->property_values[prop]]; if (strcmp (property_str[prop], "(nil)") == 0) property_str[prop] = ""; } -- 2.30.2